批量提取多个excel文件指定单元格内容,并汇总到一个新excel文件里(debug更新)

import os
import openpyxl
import pandas as pd

cellnames = ["A1", "D10", "L10", "C11"]
path = r"E:/test/"
nsh = []

# 获取目录下所有文件名
FileNames = os.listdir(path)

for fn in FileNames:
    fullfilename = os.path.join(path, fn)
    print(fullfilename)

    # 检查文件是否为 Excel 文件
    if fn.endswith('.xlsx'):
        # 加载 Excel 文件
        wb = openpyxl.load_workbook(fullfilename)
        sh = wb["Sheet1"]  # 请注意,这里的表名应该是 "Sheet1" 而不是 "sheet1"

        # 读取指定单元格的值,并添加到 nsh 列表中
        arr = [sh[n].value for n in cellnames]

        # 关闭工作簿
        wb.close()

        print(arr)
        nsh.append(arr)

# 确保 nsh 中有数据,然后创建 DataFrame
if nsh:
    dataframe = pd.DataFrame(nsh, columns=['A1', 'x', 'y', 'test1'])
    
    # 将 DataFrame 写入新的 Excel 文件
    output_path = 'E:/test/输出文件1.xlsx'
    dataframe.to_excel(output_path, index=False)
    print(f"数据已写入到文件:{output_path}")
else:
    print("没有数据可写入。")

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值